/*
 * f-ops.h
 *
 *  Created on: Oct 14, 2016
 *      Author: zhangzm
 */

#ifndef F_OPS_H_
#define F_OPS_H_

#include <stdio.h>
#include "ursax.h"

ssize_t st_pread(int fd, void* buf, size_t count, off_t offset);
ssize_t st_pwrite(int fd, const void *buf, size_t count, off_t offset);
ssize_t st_preadv(int fd, const struct iovec *iov, int iovcnt, off_t offset);
ssize_t st_pwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset);
int st_fsync(int fd);
int st_fdatasync(int fd);

ssize_t st_ignore_pread(int fd, void* buf, size_t count, off_t offset);
ssize_t st_ignore_pwrite(int fd, const void *buf, size_t count, off_t offset);
ssize_t st_ignore_preadv(int fd, const struct iovec *iov, int iovcnt, off_t offset);
ssize_t st_ignore_pwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset);
int st_ignore_fsync(int fd);
int st_ignore_fdatasync(int fd);

#endif /* F_OPS_H_ */
